/*
 * TweenReader.h
 *
 *  Created on: 2009/02/06
 *      Author: Yongshik Cho
 */

#ifndef TWEENREADER_H_
#define TWEENREADER_H_

#include "../core/Prerequisites.h"
#include "../Tile.h"
#include <tinyxml.h>


class TweenReader
{
public:
	static const std::string _NAME_TAG;
	static const std::string _TIME_TAG;
	static const std::string _FRAME_TAG;
	static const std::string _POSITION_TAG;
	static const std::string _ROTATION_TAG;
	static const std::string _ANGLE_TAG;
	static const std::string _SCALE_TAG;
	static const std::string _LOOPTYPE_TAG;
	static const std::string _LOOPCOUNT_TAG;
	static const std::string _LOOPCOUNT_VALUE;
	static const std::string _ENDLESS_VALUE;
	static const std::string _EASECLASS_TAG;
	static const std::string _EASEFUNCTION_TAG;
	static const std::string _LINEAR_VALUE;
	static const std::string _QUADRATIC_VALUE;
	static const std::string _EASEIN_VALUE;
	static const std::string _EASEOUT_VALUE;
	static const std::string _EASEINOUT_VALUE;
	static const std::string _X_TAG;
	static const std::string _Y_TAG;

public:
	static void parse(TiXmlElement* element, Renderable* renderable);
	static void parseCallbacks(TiXmlElement* element, Tweenable* tweenable);
};

#endif /* TWEENREADER_H_ */
